#ifndef _STACK_H_
#define _STACK_H_

typedef void * stackElementT;
typedef struct stackCDT * stackADT;

stackADT NewStack(void);

void FreeStack(stackADT stack);

int StackIsEmpty(stackADT stack);

int Push(stackADT stack, stackElementT element);

stackElementT Pop(stackADT stack);

stackElementT Tope(stackADT stack);

#endif
